package com.dz.risk.service;

import com.dz.risk.pojo.domain.ReportFormsDataValueEntity;
import com.dz.risk.pojo.domain.ReportFormsEntity;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;
import java.util.Date;
import java.util.List;

/**
 * 动态表业务处理层
 *
 * @author Doke
 * @date 2021/7/19 13:41
 */
public interface DynamicReportFormsService {

    /**
     * 动态解析Excel文件信息导入动态表
     *
     * @param file              文件
     * @param reportFormsEntity 报表目录信息实体
     * @throws IOException
     */
    void dynamicImportExcel(MultipartFile file, ReportFormsEntity reportFormsEntity) throws IOException;

    /**
     * 根据报表ID更新动态报表模板数据<p/>
     * 1.先删除该报表ID下得模板数据以及计算数据<tr/>
     * 2.解析文件插入报表指标项跟报表数据值表<tr/>
     * 3.保存报表模板解析后得报表指标数据集合信息<tr/>
     *
     * @param file              文件
     * @param reportFormsEntity 报表基本信息
     */
    void updateDynamicExcel(MultipartFile file, ReportFormsEntity reportFormsEntity) throws IOException;

    /**
     * 根据报表ID删除报表版本数据以及模板数据
     *
     * @param reportFormsId 报表ID
     */
    void deleteByReportFormsId(String reportFormsId);
}
